<?php
//------------------------
// 公共函数
//-------------------------
use think\Request;
use think\Response;
use think\Url;
use logic\admin\shop\LShopOrder;
/**
 * 用于显示状态操作按钮
 * @param int $status 0|1|-1状态
 * @param int $id 对象id
 * @param string $field 字段，默认id
 * @param string $controller 默认当前控制器
 * @return string
 */
function show_status($status,$id, $field = 'id', $controller = '')
{
    $controller === '' && $controller = Request::instance()->controller();
    switch($status){
        case 0:
            $ret = '<a href="javascript:;" onclick="ajax_req(\'' . Url::build($controller . '/up', [$field => $id]) . '\',{},change_status,[this,\'up\'])"><i class="fa fa-minus-circle text-yellow" title="点击上架">已下架</i></a>';
            break;
        case 1:
            $ret = '<a href="javascript:;" onclick="ajax_req(\'' . Url::build($controller . '/down', [$field => $id]) . '\',{},change_status,[this,\'down\'])"><i class="fa fa-check-circle text-green" title="点击下架">上架中</i></a>';
            break;
    }

    return $ret;
}

/**
 * 框架内部默认ajax返回
 * @param string $msg      提示信息
 * @param string $redirect 重定向类型 current|parent|''
 * @param string $alert    父层弹框信息
 * @param bool $close      是否关闭当前层
 * @param string $url      重定向地址
 * @param string $data     附加数据
 * @param int $code        错误码
 * @param array $extend    扩展数据
 */
function ajax_return_adv($msg = '操作成功', $redirect = 'parent', $alert = '', $close = false, $url = '', $data = '', $code = 0, $extend = [])
{
    $extend['opt'] = [
        'alert'    => $alert,
        'close'    => $close,
        'redirect' => $redirect,
        'url'      => $url,
    ];

    return ajax_return($data, $msg, $code, $extend);
}

/**
 * 返回错误json信息
 */
function ajax_return_adv_error($msg = '', $code = 1, $redirect = '', $alert = '', $close = false, $url = '', $data = '', $extend = [])
{
    return ajax_return_adv($msg, $alert, $close, $redirect, $url, $data, $code, $extend);
}

/**
 * ajax数据返回，规范格式
 * @param array $data   返回的数据，默认空数组
 * @param string $msg   信息
 * @param int $code     错误码，0-未出现错误|其他出现错误
 * @param array $extend 扩展数据
 */
function ajax_return($data = [], $msg = "", $code = 0, $extend = [])
{
    $ret = ["code" => $code, "msg" => $msg, "data" => $data];
    $ret = array_merge($ret, $extend);

    return Response::create($ret, 'json');
}

/**
 * 返回标准错误json信息
 */
function ajax_return_error($msg = "出现错误", $code = 1, $data = [], $extend = [])
{
    return ajax_return($data, $msg, $code, $extend);
}

// <editor-fold defaultstate="collapsed" desc="商品详情的商品信息">

function get_goods_list($order_item_id){
    $l= new LShopOrder();
    $data=$l->detail_data($order_item_id);
    return $data;
}

// </editor-fold>